[INFO] cloning repository https://github.com/TheEighthByte/Snake-Game
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/TheEighthByte/Snake-Game" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheEighthByte%2FSnake-Game", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheEighthByte%2FSnake-Game'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e8d8139416ff314d8db1a3a31a5003523505250e
[INFO] checking TheEighthByte/Snake-Game against master#e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682 for beta-170-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTheEighthByte%2FSnake-Game" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/TheEighthByte/Snake-Game on toolchain e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/TheEighthByte/Snake-Game
[INFO] finished tweaking git repo https://github.com/TheEighthByte/Snake-Game
[INFO] tweaked toml for git repo https://github.com/TheEighthByte/Snake-Game written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/TheEighthByte/Snake-Game already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:19e73879b68f455e41552ea35293514db52ea292d993f571636dbffedb77a1ee" "/opt/rustwide/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2f6fec7bba976b8a04cb01f83098fe0bcc23590f697839d07629c56b84bf296f
[INFO] running `Command { std: "docker" "start" "-a" "2f6fec7bba976b8a04cb01f83098fe0bcc23590f697839d07629c56b84bf296f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2f6fec7bba976b8a04cb01f83098fe0bcc23590f697839d07629c56b84bf296f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f6fec7bba976b8a04cb01f83098fe0bcc23590f697839d07629c56b84bf296f", kill_on_drop: false }`
[INFO] [stdout] 2f6fec7bba976b8a04cb01f83098fe0bcc23590f697839d07629c56b84bf296f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:19e73879b68f455e41552ea35293514db52ea292d993f571636dbffedb77a1ee" "/opt/rustwide/cargo-home/bin/cargo" "+e6e4f7ed1589e03bc2f6c5931c1a72e7947e8682" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cd29dd3d4990bdeb9d2e888f451299e57cf38d4789db019f8581a4390acd3641
[INFO] running `Command { std: "docker" "start" "-a" "cd29dd3d4990bdeb9d2e888f451299e57cf38d4789db019f8581a4390acd3641", kill_on_drop: false }`
[INFO] [stderr]    Compiling version_check v0.1.4
[INFO] [stderr]    Compiling bitflags v1.0.4
[INFO] [stderr]     Checking libc v0.2.43
[INFO] [stderr]    Compiling num-traits v0.2.6
[INFO] [stderr]     Checking cfg-if v0.1.5
[INFO] [stderr]    Compiling khronos_api v2.2.0
[INFO] [stderr]    Compiling cc v1.0.25
[INFO] [stderr]    Compiling proc-macro2 v0.4.19
[INFO] [stderr]     Checking nodrop v0.1.12
[INFO] [stderr]     Checking piston-float v0.3.0
[INFO] [stderr]     Checking byteorder v1.2.6
[INFO] [stderr]    Compiling rayon-core v1.4.1
[INFO] [stderr]    Compiling num-integer v0.1.39
[INFO] [stderr]     Checking scopeguard v0.3.3
[INFO] [stderr]    Compiling xml-rs v0.7.0
[INFO] [stderr]    Compiling log v0.4.5
[INFO] [stderr]     Checking crossbeam-utils v0.2.2
[INFO] [stderr]     Checking token_store v0.1.2
[INFO] [stderr]     Checking arrayvec v0.4.7
[INFO] [stderr]     Checking piston-viewport v0.3.0
[INFO] [stderr]     Checking memoffset v0.2.1
[INFO] [stderr]    Compiling serde v1.0.79
[INFO] [stderr]     Checking rand_core v0.2.1
[INFO] [stderr]    Compiling pkg-config v0.3.14
[INFO] [stderr]     Checking shader_version v0.3.0
[INFO] [stderr]    Compiling log v0.3.9
[INFO] [stderr]    Compiling lazy_static v1.1.0
[INFO] [stderr]    Compiling num-iter v0.1.37
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking remove_dir_all v0.5.1
[INFO] [stderr]     Checking adler32 v1.0.3
[INFO] [stderr]    Compiling rayon v1.0.2
[INFO] [stderr]     Checking unreachable v1.0.0
[INFO] [stderr]     Checking either v1.5.0
[INFO] [stderr]     Checking deflate v0.7.18
[INFO] [stderr]     Checking inflate v0.3.4
[INFO] [stderr]     Checking stb_truetype v0.2.4
[INFO] [stderr]     Checking percent-encoding v1.0.1
[INFO] [stderr]     Checking gif v0.9.2
[INFO] [stderr]     Checking vecmath v0.3.1
[INFO] [stderr]     Checking memmap v0.6.2
[INFO] [stderr]     Checking rand v0.5.5
[INFO] [stderr]    Compiling wayland-scanner v0.12.5
[INFO] [stderr]    Compiling gl_generator v0.9.0
[INFO] [stderr]     Checking num_cpus v1.8.0
[INFO] [stderr]    Compiling x11-dl v2.18.3
[INFO] [stderr]    Compiling gl_generator v0.8.0
[INFO] [stderr]     Checking crossbeam-epoch v0.3.1
[INFO] [stderr]     Checking shared_library v0.1.9
[INFO] [stderr]     Checking piston-texture v0.6.0
[INFO] [stderr]     Checking interpolation v0.1.0
[INFO] [stderr]     Checking read_color v1.0.0
[INFO] [stderr]     Checking piston-shaders_graphics2d v0.3.1
[INFO] [stderr]     Checking osmesa-sys v0.1.2
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]    Compiling quote v0.6.8
[INFO] [stderr]     Checking crossbeam-deque v0.2.0
[INFO] [stderr]    Compiling syn v0.15.4
[INFO] [stderr]    Compiling libloading v0.5.0
[INFO] [stderr]    Compiling wayland-client v0.12.5
[INFO] [stderr]    Compiling wayland-protocols v0.12.5
[INFO] [stderr]    Compiling glutin v0.12.2
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]    Compiling gl v0.10.0
[INFO] [stderr]     Checking ordered-float v0.5.2
[INFO] [stderr]     Checking enum_primitive v0.1.1
[INFO] [stderr]     Checking tempfile v3.0.4
[INFO] [stderr]     Checking rusttype v0.4.3
[INFO] [stderr]     Checking dlib v0.4.1
[INFO] [stderr]     Checking num-rational v0.1.42
[INFO] [stderr]     Checking wayland-sys v0.12.5
[INFO] [stderr]     Checking png v0.11.0
[INFO] [stderr]     Checking piston2d-graphics v0.26.0
[INFO] [stderr]     Checking wayland-kbd v0.13.1
[INFO] [stderr]     Checking jpeg-decoder v0.1.15
[INFO] [stderr]    Compiling serde_derive v1.0.79
[INFO] [stderr]     Checking image v0.18.0
[INFO] [stderr]     Checking wayland-window v0.13.3
[INFO] [stderr]     Checking winit v0.10.0
[INFO] [stderr]     Checking piston2d-opengl_graphics v0.52.1
[INFO] [stderr]     Checking pistoncore-input v0.20.0
[INFO] [stderr]     Checking pistoncore-window v0.31.0
[INFO] [stderr]     Checking pistoncore-event_loop v0.36.0
[INFO] [stderr]     Checking pistoncore-glutin_window v0.45.3
[INFO] [stderr]     Checking piston v0.36.0
[INFO] [stderr]     Checking snake_game v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0463]: can't find crate for `piston_window`
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate piston_window;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0463]: can't find crate for `piston_window`
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | extern crate piston_window;
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Button` in this scope
[INFO] [stdout]   --> src/main.rs:29:33
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn pressed(&mut self, btn: &Button)
[INFO] [stdout]    |                                 ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/main.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |             &Button::Keyboard(Key::Up) if last_direction != Direction::Down => Direction::Up,
[INFO] [stdout]    |                               ^^^ use of undeclared type `Key`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::thread::local_impl::Key;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/main.rs:36:31
[INFO] [stdout]    |
[INFO] [stdout] 36 |             &Button::Keyboard(Key::Down) if last_direction != Direction::Up => Direction::Down,
[INFO] [stdout]    |                               ^^^ use of undeclared type `Key`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::thread::local_impl::Key;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/main.rs:37:31
[INFO] [stdout]    |
[INFO] [stdout] 37 |             &Button::Keyboard(Key::Left) if last_direction != Direction::Right => Direction::Left,
[INFO] [stdout]    |                               ^^^ use of undeclared type `Key`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::thread::local_impl::Key;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/main.rs:38:31
[INFO] [stdout]    |
[INFO] [stdout] 38 |             &Button::Keyboard(Key::Right) if last_direction != Direction::Left => Direction::Right,
[INFO] [stdout]    |                               ^^^ use of undeclared type `Key`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::thread::local_impl::Key;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PistonWindow` in this scope
[INFO] [stdout]   --> src/main.rs:66:21
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let mut window: PistonWindow =
[INFO] [stdout]    |                     ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:106:16
[INFO] [stdout]     |
[INFO] [stdout] 106 |             });;
[INFO] [stdout]     |                ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `Button` in this scope
[INFO] [stdout]   --> src/main.rs:29:33
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn pressed(&mut self, btn: &Button)
[INFO] [stdout]    |                                 ^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/main.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |             &Button::Keyboard(Key::Up) if last_direction != Direction::Down => Direction::Up,
[INFO] [stdout]    |                               ^^^ use of undeclared type `Key`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::thread::local_impl::Key;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/main.rs:36:31
[INFO] [stdout]    |
[INFO] [stdout] 36 |             &Button::Keyboard(Key::Down) if last_direction != Direction::Up => Direction::Down,
[INFO] [stdout]    |                               ^^^ use of undeclared type `Key`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::thread::local_impl::Key;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/main.rs:37:31
[INFO] [stdout]    |
[INFO] [stdout] 37 |             &Button::Keyboard(Key::Left) if last_direction != Direction::Right => Direction::Left,
[INFO] [stdout]    |                               ^^^ use of undeclared type `Key`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::thread::local_impl::Key;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Key`
[INFO] [stdout]   --> src/main.rs:38:31
[INFO] [stdout]    |
[INFO] [stdout] 38 |             &Button::Keyboard(Key::Right) if last_direction != Direction::Left => Direction::Right,
[INFO] [stdout]    |                               ^^^ use of undeclared type `Key`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing this struct
[INFO] [stdout]    |
[INFO] [stdout] 3  + use std::thread::local_impl::Key;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0412]: cannot find type `PistonWindow` in this scope
[INFO] [stdout]   --> src/main.rs:66:21
[INFO] [stdout]    |
[INFO] [stdout] 66 |     let mut window: PistonWindow =
[INFO] [stdout]    |                     ^^^^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/main.rs:106:16
[INFO] [stdout]     |
[INFO] [stdout] 106 |             });;
[INFO] [stdout]     |                ^ help: remove this semicolon
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowSettings`
[INFO] [stdout]   --> src/main.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |         WindowSettings::new("Snake Game", [WIDTH * BLOCK_SIZE, HEIGHT * BLOCK_SIZE])
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ use of undeclared type `WindowSettings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Events`
[INFO] [stdout]   --> src/main.rs:77:22
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let mut events = Events::new(EventSettings::new()).ups(10);
[INFO] [stdout]    |                      ^^^^^^ use of undeclared type `Events`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `EventSettings`
[INFO] [stdout]   --> src/main.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let mut events = Events::new(EventSettings::new()).ups(10);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^ use of undeclared type `EventSettings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ButtonState`
[INFO] [stdout]   --> src/main.rs:82:27
[INFO] [stdout]    |
[INFO] [stdout] 82 |             if k.state == ButtonState::Press 
[INFO] [stdout]    |                           ^^^^^^^^^^^ use of undeclared type `ButtonState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `WindowSettings`
[INFO] [stdout]   --> src/main.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |         WindowSettings::new("Snake Game", [WIDTH * BLOCK_SIZE, HEIGHT * BLOCK_SIZE])
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ use of undeclared type `WindowSettings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Events`
[INFO] [stdout]   --> src/main.rs:77:22
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let mut events = Events::new(EventSettings::new()).ups(10);
[INFO] [stdout]    |                      ^^^^^^ use of undeclared type `Events`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `EventSettings`
[INFO] [stdout]   --> src/main.rs:77:34
[INFO] [stdout]    |
[INFO] [stdout] 77 |     let mut events = Events::new(EventSettings::new()).ups(10);
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^ use of undeclared type `EventSettings`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `ButtonState`
[INFO] [stdout]   --> src/main.rs:82:27
[INFO] [stdout]    |
[INFO] [stdout] 82 |             if k.state == ButtonState::Press 
[INFO] [stdout]    |                           ^^^^^^^^^^^ use of undeclared type `ButtonState`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `clear` in this scope
[INFO] [stdout]   --> src/main.rs:95:17
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 clear([0.0, 0.0, 0.0, 1.0], g);
[INFO] [stdout]    |                 ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `rectangle`
[INFO] [stdout]    --> src/main.rs:100:30
[INFO] [stdout]     |
[INFO] [stdout] 100 |                     .map(|p| rectangle::square(p.0 as f64, p.1 as f64, snake.length as f64))
[INFO] [stdout]     |                              ^^^^^^^^^ use of undeclared crate or module `rectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `clear` in this scope
[INFO] [stdout]   --> src/main.rs:95:17
[INFO] [stdout]    |
[INFO] [stdout] 95 |                 clear([0.0, 0.0, 0.0, 1.0], g);
[INFO] [stdout]    |                 ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `rectangle` in this scope
[INFO] [stdout]    --> src/main.rs:105:40
[INFO] [stdout]     |
[INFO] [stdout] 105 |                     .for_each(|square| rectangle([1.0, 1.0, 1.0, 1.0], square, c.transform, g));
[INFO] [stdout]     |                                        ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `rectangle`
[INFO] [stdout]    --> src/main.rs:100:30
[INFO] [stdout]     |
[INFO] [stdout] 100 |                     .map(|p| rectangle::square(p.0 as f64, p.1 as f64, snake.length as f64))
[INFO] [stdout]     |                              ^^^^^^^^^ use of undeclared crate or module `rectangle`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `rectangle` in this scope
[INFO] [stdout]    --> src/main.rs:105:40
[INFO] [stdout]     |
[INFO] [stdout] 105 |                     .for_each(|square| rectangle([1.0, 1.0, 1.0, 1.0], square, c.transform, g));
[INFO] [stdout]     |                                        ^^^^^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Button`
[INFO] [stdout]   --> src/main.rs:35:14
[INFO] [stdout]    |
[INFO] [stdout] 35 |             &Button::Keyboard(Key::Up) if last_direction != Direction::Down => Direction::Up,
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Button`
[INFO] [stdout]   --> src/main.rs:36:14
[INFO] [stdout]    |
[INFO] [stdout] 36 |             &Button::Keyboard(Key::Down) if last_direction != Direction::Up => Direction::Down,
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Button`
[INFO] [stdout]   --> src/main.rs:37:14
[INFO] [stdout]    |
[INFO] [stdout] 37 |             &Button::Keyboard(Key::Left) if last_direction != Direction::Right => Direction::Left,
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Button`
[INFO] [stdout]   --> src/main.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 |             &Button::Keyboard(Key::Right) if last_direction != Direction::Left => Direction::Right,
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `types`
[INFO] [stdout]   --> src/main.rs:97:39
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 let snake_blocks: Vec<types::Rectangle> = snake.body
[INFO] [stdout]    |                                       ^^^^^ use of undeclared crate or module `types`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 19 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433, E0463.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Button`
[INFO] [stdout]   --> src/main.rs:35:14
[INFO] [stdout]    |
[INFO] [stdout] 35 |             &Button::Keyboard(Key::Up) if last_direction != Direction::Down => Direction::Up,
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Button`
[INFO] [stdout]   --> src/main.rs:36:14
[INFO] [stdout]    |
[INFO] [stdout] 36 |             &Button::Keyboard(Key::Down) if last_direction != Direction::Up => Direction::Down,
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Button`
[INFO] [stdout]   --> src/main.rs:37:14
[INFO] [stdout]    |
[INFO] [stdout] 37 |             &Button::Keyboard(Key::Left) if last_direction != Direction::Right => Direction::Left,
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Button`
[INFO] [stdout]   --> src/main.rs:38:14
[INFO] [stdout]    |
[INFO] [stdout] 38 |             &Button::Keyboard(Key::Right) if last_direction != Direction::Left => Direction::Right,
[INFO] [stdout]    |              ^^^^^^ use of undeclared type `Button`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of undeclared crate or module `types`
[INFO] [stdout]   --> src/main.rs:97:39
[INFO] [stdout]    |
[INFO] [stdout] 97 |                 let snake_blocks: Vec<types::Rectangle> = snake.body
[INFO] [stdout]    |                                       ^^^^^ use of undeclared crate or module `types`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 19 previous errors; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0412, E0425, E0433, E0463.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0412`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `snake_game` (bin "snake_game" test) due to 20 previous errors; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `snake_game` (bin "snake_game") due to 20 previous errors; 1 warning emitted
[INFO] running `Command { std: "docker" "inspect" "cd29dd3d4990bdeb9d2e888f451299e57cf38d4789db019f8581a4390acd3641", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cd29dd3d4990bdeb9d2e888f451299e57cf38d4789db019f8581a4390acd3641", kill_on_drop: false }`
[INFO] [stdout] cd29dd3d4990bdeb9d2e888f451299e57cf38d4789db019f8581a4390acd3641
